1. Field of Technology
The present description generally relates to remote control units and, more particularly, to translation of raw formatted infrared (IR) codes.
2. Background
When creating a set of IR remote control codes, such IR codes are encoded by an IR learning device that stores each code in a “raw” format. IR codes in the raw format generally include a series of on/off commands that define IR pulses by activating and deactivating a light emitting diode (LED) within an IR transmitter.
An example of an IR message 100 defined by a raw IR code is depicted in FIG. 1. The IR message can include a plurality of IR bursts 102, 104, 106, each of which includes at least one IR pulse 108. The period (i.e. duration) 110 of each IR pulse 108, the period 112 between IR pulses 108, and the number of IR pulses 108 generally vary for different raw IR codes. Moreover, the carrier frequency of the light emitted by the LED for each IR pulse 108 can vary for different raw codes. In this regard, it is the on/off commands and the carrier frequency that are defined by each raw IR code.
The IR message 100 can begin with the IR burst 102, which indicates that the IR message 100 is distinct from previously transmitted IR messages. The IR burst 102 can be a start signal that indicates that the IR message 100 is starting, or a repeat signal that indicates that the IR message 100 is repeating.
Each IR burst 104, 106 can correspond to a particular type of identifier. For example, the IR burst 104 can correspond to a device identifier (device ID) and the IR burst 106 can correspond to a command identifier (command ID). Further, certain IR protocols may provide for an IR burst 114 between the end of the IR burst 104 and the beginning of the IR burst 106 so as to distinguish the device ID from the command ID, though this is not always the case. Other protocols may provide a certain time period, or delay, between the end of the IR burst 104 and the beginning of the IR burst 106 so as to distinguish the device ID from the command ID. Still, other protocols may provide a certain number of pulses in the IR burst 104, and after that number of pulses, it may be assumed that the remaining pulses correspond to the IR burst 106.
Raw IR codes typically are not unified across different electronic devices that are being controlled. Instead, many electronic devices use a unique protocol having a dedicated raw code set. These unique code sets oftentimes must be generated for each electronic device, which increases the number of codes and code sets in the database. For example, the numeric 1 command of a particular television model may be learned and stored in raw format as a unique command. Then, the same numeric 1 command of another television model also may be learned and stored in raw format as another unique command. Even though a particular manufacturer may use the same raw codes among different device models, this is not always the case. Given the larger number of different devices that use IR remote controls, a database of IR codes many contain hundreds of thousands of codes.
Further, codes in raw format can be considerably long due to noise in the IR message. For example, noise may affect the way the raw is encoded, and hence in increase the length of a command. Accordingly, the size of a database used to store the raw IR codes can be significantly large, especially for an embedded system.